1. Field
Various features relate to the protection of memory elements (e.g., data structures) from attacks by the use of an aggregate authentication code over a plurality of memory elements.
2. Background
Heap memory is reserved by a processor and is organized through the use of a meta-data structure. A meta-data structure may be a fixed-length data structure which contains information (e.g., in a header block) about which variable “owns” the next section of memory (if the memory is assigned) and the amount of memory that is reserved in the corresponding memory block. Attackers may wish to corrupt these meta-data structures (e.g., modify the header blocks) in order to reduce the amount of free memory or to ensure that certain important pieces of data are placed into vulnerable sections of memory. Hence, it is desirable to protect this meta-data (e.g., data in a data structure or header block of a memory block) to prevent unauthorized alteration of data structures.
Therefore, a computationally inexpensive solution is needed to protect memory elements (e.g., data structures).